﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HS {
    class Monster : Character {
        /*Atributos*/
        /***********************************************************************************/
        private char typeMonster;
        private int speed;          //se simulará por la cantidad de celdas que avanzará
        private int injuryDeath;    //Dagno por muerte
        private int damage;         //Dagno producido a un soldado
        private int moneyProvided;  //dinero recaudado por vencer a un monstrito

        /*Constructores*/
        /***********************************************************************************/
        public Monster() {
            setLife(100);
            setAccuracy(0.8);
            setDamage(10);
            setMoneyProvided(30);
        }
        public Monster(char typeMonster, int x, int y) {
            setTypeMonster(typeMonster);
            setX(x);
            setY(y);
            if (typeMonster == '1') {
                setLife(100);
                setName("Droggs");
                setSpeed(2);    //avanza mucho más rápido que cualquiera, 2 celdas por turno.
                setAccuracy(0.8);
                setDamage(30);
                setMoneyProvided(50);
                setDescription("Robóticamente mutados, son ágiles y rabiosos, andan en grupo");
            }
            if (typeMonster == '2') {
                setLife(200);
                setName("Spyder");
                setSpeed(1);
                setAccuracy(0.9);
                setDamage(50);
                setMoneyProvided(100);
                setDescription("Robóticamente mutados, son de muy mal caracter y fuertes");
            }
        }


        /*Metodos Sets y Gets*/
        /***********************************************************************************/
        public char getTypeMonster() {
            return typeMonster;
        }
        public void setTypeMonster(char typeMonster) {
            this.typeMonster= typeMonster;
        }
        public int getSpeed() {
            return speed;
        }
        public void setSpeed(int speed) {
            this.speed = speed;
        }
        public int getInjuryDeath() {
            return injuryDeath;
        }
        public void setInjuryDeath(int injuryDeath) {
            this.injuryDeath = injuryDeath;
        }
        public int getDamage() {
            return damage;
        }
        public void setDamage(int damage) {
            this.damage = damage;
        }
        public int getMoneyProvided() {
            return moneyProvided;
        }
        public void setMoneyProvided(int moneyProvided) {
            this.moneyProvided = moneyProvided;
        }


        /*Metodos Otros*/
        /***********************************************************************************/
        void move() {
            //LO QUE DEBE PASARSE ES EL OBJETO MONSTRUO:
            //Coordenadas Abajo y Derecha POSITIVO; Arriba e Izquierda NEGATIVO.
            int x;
            //Avance del monstruo, según el tipo que tenga:
            x = this.getX() - getSpeed();
            this.setX(x);
        }

       
        





        ///*-----------------------------------------|DESTROYER|-------------------------------------------*/
        //~Monster()
        //{
        //    setLife(0);
        //    moneyProvided = 50;
        //}
    }
}
